﻿#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<math.h>
#include<windows.h>
#include<string.h>
//输入一个整数，判断其是否为奇数
//int main() {
//	int a = 0;
//	printf("请输入一个整数：");
//	scanf("%d", &a);
//	if (a % 2 == 0)
//		printf("不是奇数。");
//	else
//		printf("是奇数。");
//}

////输⼊⼀个年龄，>= 18岁就输出：成年，否则就输出：未成年
//int main() {
//	int age = 0;
//	scanf("%d", &age);
//	if (age >= 18)
//		printf("成年");
//	else
//		printf("未成年");
//		return 0;
//		
//}

//if语句同时控制2条语句
//int main() {
//	int age = 0;
//	scanf("%d", &age);
//	if (age >= 18) {
//		printf("成年了\n");
//		printf("可以谈恋爱\n");
//	}
//	else
//		printf("未成年");
//	return 0;
//}

//嵌套if
//要求输⼊⼀个整数，判断输⼊的整数是0，还是正数或者负数。
//int main() {
//	int num = 0;
//	scanf("%d", &num);
//	if (num == 0)
//		printf("是0");
//	else if (num > 0)
//		printf("是正数");
//	else
//		printf("是负数");
//	return 0;
//}


//输⼊⼀个整数，如果是正数，再判断是奇数还是偶数，并输出；如果不是正数则输出：⾮正数
//int main() {
//	int num = 0;
//	scanf("%d", &num);
//	if (num > 0) {
//		if (num % 2 == 0)
//			printf("是正数且是偶数。");
//		else
//			printf("是正数且是奇数。");
//	}
//	else
//		printf("非正数。");
//	return 0;
//}




//输⼊⼀个⼈的年龄
//如果年龄 < 18岁，打印"少年"
//	如果年龄在18岁⾄44岁打印"⻘年"
//	如果年龄在45岁⾄59岁打印"中⽼年"
//	如果年龄在60岁⾄89岁打印"⽼年"
//	如果90岁及以上打印"⽼寿星
//int main(){
//	int age = 0;
//	scanf("%d", &age);
//	if ( age < 18)
//		printf("少年");
//	else if ( age <= 44)
//		printf("青年");
//	else if ( age <= 59)
//		printf("中老年");
//	else if ( age <= 89)
//		printf("老年");
//	else
//		printf("老寿星");
//	return 0;
//	}



//输⼊⼀个年龄，如果年龄在18岁~36岁之间，我们输出⻘年。
//int main() {
//	int age = 0;
//	scanf("%d", &age);
//	if (18 < age && age < 36)
//		printf("青年");
//	return 0;
//}

//使⽤条件操作符表⽰下⾯代码的逻辑
//int main()
//{
//	int a = 0;
//	int b = 0;
//	scanf("%d", &a);
//	if (a > 5)
//		b = 3;
//	else
//		b = -3;
//	printf("%d\n", b);
//	return 0;
//}
//改造后如下
//int main() {
//	int a = 0;
//	int b = 0;
//	scanf("%d", &a);
//	b = (a > 5) ? 3 : -3;
//	printf("a= %d \n", a);
//	printf("b= %d \n", b);
//	return 0;
//}

//使⽤条件表达式实现找两个数中较⼤值。
//int main() {
//	int a = 0;
//	int b = 0;
//	scanf("%d %d", &a, &b);
//	int m = a > b ? a : b;
//	printf("%d", m);
//	return 0;
//}

//有⼀个变量叫 flag, 如果flag为假，要做⼀个什么事情
//int main() {
//	int flag = 0;
//	if (!flag)
//		printf("do something.");
//	return 0;
//}

//我们说⼀年中⽉份是12⽉或者1⽉或者2⽉是冬天。
//int main() {
//	int month = 0;
//	scanf("%d", &month);
//	if (month == 12 || month == 1 || month == 2)
//	printf("冬季");
//	return 0;
//}

//int main() {
//	int month = 0;
//	scanf("%d", &month);
//	if (month == 12 || month == 1 || month == 2)
//	{
//		printf("冬季\n");
//	}
//}




//输⼊⼀个年份year，判断year是否是闰年
//闰年判断的规则：
//1. 能被4整除并且不能被100整除是闰年
//2. 能被400整除是闰年
//int main() {
//	int year = 0;
//	scanf("%d", &year);
//	if (year % 4 == 0 && year % 100 != 0)
//		printf("是闰年。");
//	else if (year % 400 == 0)
//		printf("是闰年");
//	return 0;
//}

//#include <stdio.h>
//int main()
//{
//	int i = 0, a = 0, b = 2, c = 3, d = 4;
//	//i = a++ && ++b && d++;
//	i = a++||++b||d++;
//	printf("a = %d\n b = %d\n c = %d\nd = %d\n", a, b, c, d);
//	return 0;
//}

//int main()
//{
//	int i = 0;
//	for (i = 0; i < 10; i++)
//	{
//		if (i = 5)
//			printf("%d ", i);
//	}
//	return 0;
//}



//写一个代码打印1 - 100之间所有3的倍数的数字
//int main() {
//	int i = 0;
//	for (i = 1; i <= 100; i++) {
//		if (i % 3 == 0)
//			printf("%d\n", i);
//	}
//	return 0;
//}

//写代码将三个整数数按从大到小输出。
//int main() {
//	int a, b, c,temp = 0;
//	scanf("%d %d %d", &a, &b, &c);
//	if (a < b) {
//		temp = a;
//		a = b;
//		b = temp;
//	}
//	if (a < c) {
//		temp = a;
//		a = c;
//		c = temp;
//	}
//	if (b < c) {
//		temp = b;
//		b = c;
//		c = temp;
//	}
//	printf("%d %d %d\n", a, b, c);
//	return 0;
//}



//输⼊任意⼀个整数值，计算除3之后的余数
//int main() {
//	int num = 0;
//	scanf("%d", &num);
//	switch (num % 3) {
//	case 0:
//		printf("余数为0");
//		break;
//	case 1:
//		printf("余数为1");
//		break;
//	case 2:
//		printf("余数为2");
//		break;
//	}
//	return 0;
//}



//输⼊⼀个1~7的数字，打印对应的星期⼏
//int main() {
//	int num = 0;
//	scanf("%d", &num);
//	switch (num) {
//	case 1:
//		printf("星期一");
//		break;
//	case 2:
//		printf("星期二");
//		break;
//	case 3:
//		printf("星期三");
//		break;
//	case 4:
//		printf("星期四");
//		break;
//	case 5:
//		printf("星期五");
//		break;
//	case 6:
//		printf("星期六");
//		break;
//	case 7:
//		printf("星期天");
//		break;
//	default:
//		printf("输入错误，请重新输入");
//		break;
//
//	}
//	return 0;
//}


//输⼊1~5，输出的是“⼯作⽇”
//输⼊6~7，输出“休息⽇”
//int main() {
//	int num = 0;
//	scanf("%d", &num);
//	switch (num) {
//	case 1:
//	case 2:
//	case 3:
//	case 4:
//	case 5:
//		printf("工作日");
//		break;
//	case 6:
//	case 7:
//		printf("休息日");
//		break;
//	default:
//		printf("输入错误，请重新输入");
//		break;
//	}
//	return 0;
//}


//在屏幕上打印 1~10 的值
//int main() {
//	int i = 1;
//	while (i <= 10) {
//		printf("%d ", i);
//		i++;
//	}
//	return 0;
//}


//输⼊⼀个正的整数，逆序打印这个整数的每⼀位
//例如：
//输⼊：1234，输出：4 3 2 1
//输⼊：521，输出：1 2 5
//int main() {
//	int n = 0;
//	scanf("%d", &n);
//	while (n % 10) {
//		printf("%d", n % 10);
//		n = n / 10;
//	}
//	return 0;
//}


//在屏幕上打印1~10的值
//int main() {
//	int i = 0;
//	for (i = 1; i <= 10; i++) {
//		printf("%d ", i);
//	}
//	return 0;
//}

//计算1~100之间3的倍数的数字之和
//int main() {
//	int i = 0;
//	int sum = 0;
//	for (i = 1; i <= 100; i++) {
//		if (i % 3 == 0)
//			sum = sum + i;
//	}
//	printf("%d ", sum);
//	return 0;
//}

//在屏幕上打印1~10的值
//int main() {
//	int i = 1;
//	do {
//		printf("%d ", i);
//		i++;
//	} while (i <= 10);
//	return 0;
//
//}


//输⼊⼀个正整数，计算这个整数是⼏位数？
//例如：
//输⼊：1234 输出：4
//输⼊：12 输出：2
//int main() {
//	int i = 0;
//	scanf("%d", &i);
//	int count = 0;
//	do{
//		count++;
//		i = i / 10;
//	} while (i);
//	printf("%d", count);
//	return 0;
//}


//#include <stdio.h>
//int main()
//{
//	int i = 1;
//	do
//	{
//		if (i == 5)
//			continue;
//		printf("%d ", i);
//		i = i + 1;
//	} while (i <= 10);
//}



//找出100~200之间的素数，并打印在屏幕上。
//int main() {
//	int i = 0; 
//	for (i = 100; i <= 200; i++) {
//		int j = 0;
//		int flag = 1;
//		for (j = 2; j <= i - 1; j++) {
//			if (i % j == 0) {
//				flag = 0;
//				break;
//			}
//		}
//		if(flag == 1)
//			printf("%d ", i);
//	}
//	return 0;
//}

//找出100~200之间的素数，并打印在屏幕上。
//int main() {
//	int i = 0; 
//	for (i = 101; i <= 200; i+=2) {
//		int j = 0;
//		int flag = 1;
//		for (j = 2; j <= sqrt(i); j++) {
//			if (i % j == 0) {
//				flag = 0;
//				break;
//			}
//		}
//		if(flag == 1)
//			printf("%d ", i);
//	}
//	return 0;
//}


//关机程序，利用go函数实现。
//int main(){
//	char str[20] = { 0 };
//	system("shutdown -s -t 60");
//	again:
//	printf("请注意，你的电脑将在60秒内关机，输入我是猪以取消关机。\n");
//	scanf("%s", &str);
//	if (0 == strcmp(str, "我是猪")) {
//		system("shutdown -a");
//	}
//	else {
//		goto again;
//	}
//	return 0;
//
//}

//关机程序，利用while循环实现。
int main() {
	char str[20] = { 0 };
	system("shutdown -s -t 60");
	while (1) {
		printf("请注意，你的电脑将在60秒内关机，输入我是猪以取消关机。\n");
		scanf("%s", &str);
		if (0 == strcmp(str, "我是猪")) {
			system("shutdown -a");
			break;
		}
	}
	return 0;

}